export default new (class Tool {
  toDate(input, fmt) {
    if (!input) return '';
    if (typeof input === 'number') {
      input = new Date(input);
    } else {
		input = new Date(input);
      // input = new Date(Date.parse(input.replace(/-/g, '/'))); // ie8及app端无法parse '2019-10-10'的格式，需转换为'2019/10/10'
    }
    var o = {
      'M+': input.getMonth() + 1, // 月份
      'd+': input.getDate(), // 日
      'h+': input.getHours(), // 小时
      'm+': input.getMinutes(), // 分
      's+': input.getSeconds(), // 秒
      'q+': Math.floor((input.getMonth() + 3) / 3), // 季度
      S: input.getMilliseconds() // 毫秒
    };
    if (/(y+)/.test(fmt)) {
      fmt = fmt.replace(
        RegExp.$1,
        (input.getFullYear() + '').substr(4 - RegExp.$1.length)
      );
    }
    for (var k in o) {
      if (new RegExp('(' + k + ')').test(fmt)) {
        fmt = fmt.replace(
          RegExp.$1,
          RegExp.$1.length === 1
            ? o[k]
            : ('00' + o[k]).substr(('' + o[k]).length)
        );
      }
    }
    return fmt;
  }

  takeImage(html) {
    let photoPath = [];
    let r = /src[\s]*=[\s]*['"]{0,1}([^'"]*)['"]{0,1}/g;
    let result = '';
    let resultUrl = [];
    // debugger;
    while ((result = r.exec(html)) !== null) {
      if (result[1].indexOf('spacer.gif') === -1) {
        // if (result[1].indexOf('?') !== -1) {
        //   resultUrl.push(result[1].substring(0, result[1].indexOf('?')));
        // } else {
        //   resultUrl.push(result[1]);
        // }
        resultUrl.push(result[1]);
      }
    }
    photoPath = resultUrl;
    return photoPath;
  }

  takeText(html) {
    if (html) {
      let reg = /<[^>]*>/g;
      let content = html.replace(reg, '');
      content = content.replace(/&nbsp;/g, ' ');
      content = content.replace(/&amp;/g, '&');
      content = content.replace(/&lt;/g, '<');
      content = content.replace(/&gt;/g, '>');
      content = content.replace(/&quot;/g, '"');
      content = content.replace(/&qpos;/g, "'");
      return content;
    }
    return '';
  }
  selectImg(val, files) {
    let contentImg = this.takeImage(val);
    contentImg.forEach(i => {
      let urlType = true;
      if (i.indexOf('http') < 0) {
        files.forEach(e => {
          if (e.url === i) {
            urlType = false;
          }
        });
        if (urlType) {
          files.push({ url: i, isChecked: false, status: 'success' });
        }
      }
    });
    return files;
  }
  checkedUeditorContent(content) {
    if (
      content.indexOf(
        '/static/plugins/ueditor/themes/default/images/spacer.gif'
      ) === -1
    ) {
      return true;
    } else {
      return false;
    }
  }
})();
